package com.atguigu.petstore.sys;

import com.atguigu.petstore.exception.PetStoreExceptionHandler;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.cloud.context.config.annotation.RefreshScope;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Import;

/**
 * @author lfy
 * @Description 主程序
 * @create 2023-09-21 11:33
 */

//@RefreshScope ： 生产环境禁用； 需要人工介入，虽然麻烦，但是安全

/**
 * SpringBoot的默认扫描规则：
 *   1、SpringBoot只扫描自己主程序所在的包，及其后代包
 *     主程序：com.atguigu.petstore.sys
 *     异常类：com.atguigu.petstore.exception
 *
 *
 *   解决方案：
 *     1）、@ComponentScan 主程序、你要扫的包
 *     2）、使用 @Import； 导入一个组件到容器中
 *
 */

@Import({
        PetStoreExceptionHandler.class
})
@MapperScan(basePackages = "com.atguigu.petstore.sys.mapper")
@EnableDiscoveryClient
@SpringBootApplication
public class SysMainApplication {

    public static void main(String[] args) {

        //TODO 1、全局统一拦截验证令牌

        SpringApplication.run(SysMainApplication.class, args);
    }
}
